package controllers;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;

import play.mvc.Controller;


import models.Classe;

public class visualizarClasses extends Application {

	private static Connection conexao;
	private static Statement comando;
	
	/*************************************************************/
	
	protected static void conectar() throws SQLException {  
	    
		  
		try {
			Class.forName("org.postgresql.Driver");
		} catch (ClassNotFoundException e) {
		}

			conexao = DriverManager.getConnection(  
			        "jdbc:postgresql://localhost:5432/SGRv2",  
			        "postgres",  
			        "senha");
		
			comando =  conexao.createStatement();

	}

	/***********************************************************/
	
	public static void visualizarClasses() throws SQLException {
		
		List<Classe> classes = new ArrayList<Classe>();
		
		classes  = recuperarClasses();
		
		render(classes );
	}	
	
	/*************************************************************/

    public static List<Classe> recuperarClasses() throws SQLException
    {    
    	conectar();
    	
    	ResultSet reader = comando.executeQuery("select * from classe");
    	    	
    	List<Classe> classes = new ArrayList<Classe>();
    	

        while (reader.next())
        {         
        	Classe novo = new Classe();
            try
            {
                novo.setid(((int)reader.getInt("id") ));
            }
            catch (Exception e) {
				
			}
            try
            {
                novo.setnome((String)reader.getString("nome"));
            }
            catch (Exception e) {}
            try
            {
                novo.setcaracteristica((String)reader.getString("caracteristica"));
            }
            catch (Exception e) {}
                                   
            classes.add(novo);
        }

        return classes;

    }

    /***************************************************************/
}
